package com.newtouch.avmarketing.mgr.modules.avmarkrting.entity;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.newtouch.avmarketing.mgr.modules.base.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.annotations.CreationTimestamp;
import org.hibernate.annotations.UpdateTimestamp;
import org.springframework.data.annotation.CreatedBy;
import org.springframework.data.annotation.LastModifiedBy;

import javax.persistence.*;
import java.io.Serializable;
import java.sql.Timestamp;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(schema = "avmarketing",name = "double_configuration")
public class DoubleConfiguration extends BaseEntity implements Serializable {

    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    @ApiModelProperty(value = "主键--步骤序号",example = "1", hidden = true)
    @Column(name="id")
    private Long id;

    @ApiModelProperty("步骤名称")
    @Column(name="step_name")
    private String stepName;

    @ApiModelProperty("步骤话术")
    @Column(name="step_content")
    private String stepContent;

    @ApiModelProperty("屏幕提示文本")
    @Column(name="screen_content")
    private String screenContent;

    @ApiModelProperty("播报话术类型 1.固定话术 2.有条件话术")
    @Column(name="report_type")
    private String reportType;

    //1:固定播报  2:有则播报
    @ApiModelProperty("是否播报 1:固定播报  2:有则播报")
    @Column(name="is_report")
    private String isReport;

    //1:是  0:否
    @ApiModelProperty("是否识别客户回答 1:是  0:否")
    @Column(name="is_reply")
    private String isReply;

    //5、10 秒
    @ApiModelProperty("识别周期 1:5秒  2:10秒")
    @Column(name="sb_time")
    private String sbTime;

    //1.清楚/不清楚 2.同意/不同意  3.确认/不确认 4.是的/不是
    @ApiModelProperty("识别内容 1.清楚/不清楚 2.同意/不同意  3.确认/不确认 4.是的/不是")
    @Column(name="sb_content")
    private String sbContent;

    @ApiModelProperty("识别不通过提示语")
    @Column(name="not_tishi")
    private String notTishi;

    @ApiModelProperty("识别不通过音频文件")
    @Column(name="not_audio")
    private String notAudio;

    //1:识别通过后  2:15秒后  3:业务员点击下一步按钮
    @ApiModelProperty("进入下一步骤方式 1:识别通过后  2:15秒后  3:业务员点击下一步按钮")
    @Column(name="next_step")
    private String nextStep;

    //1：存疑标记 2：重点审核
    @ApiModelProperty("非自动识别通过进入下一步  1：存疑标记 2：重点审核")
    @Column(name="not_nextstep")
    private String notNextStep;

    @ApiModelProperty("页面展示文件地址")
    @Column(name="file")
    private String file;

    //1:已删除 0:未删除
    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @CreatedBy
    @ApiModelProperty(value = "逻辑删除  1:已删除 0:未删除", hidden = true)
    @Column(name="is_deleted")
    private String isDeleted;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @CreatedBy
    @Column(name = "create_by", updatable = false)
    @ApiModelProperty(value = "创建人", hidden = true)
    private String createBy;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @LastModifiedBy
    @Column(name = "update_by")
    @ApiModelProperty(value = "更新人", hidden = true)
    private String updatedBy;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @CreationTimestamp
    @Column(name = "create_time", updatable = false)
    @ApiModelProperty(value = "创建时间", hidden = true)
    private Timestamp createTime;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    @UpdateTimestamp
    @Column(name = "update_time")
    @ApiModelProperty(value = "更新时间", hidden = true)
    private Timestamp updateTime;


}
